import {type App} from 'vue';
import WeChat from './icons/IconWechat.vue';
import Logo from './icons/IconLogo.vue';
import IconLostNFound from "@/components/icons/IconLostNFound.vue";
import IconLogo from "@/components/icons/IconLogo.vue";
import IconCrown from '@/components/icons/IconCrown.vue'
import IconUser from '@/components/icons/IconUser.vue'
import IconHorn from '@/components/icons/IconHorn.vue'
import IconCopy from '@/components/icons/IconCopy.vue'
import IconCircle from '@/components/icons/IconCircle.vue'
import IconCheckCircle from '@/components/icons/IconCheckCircle.vue'
import IconLogout from '@/components/icons/IconLogout.vue'
import IconThumb from '@/components/icons/IconThumb.vue'
import IconStop from '@/components/icons/IconStop.vue'
import IconPlay from "@/components/icons/IconPlay.vue"
import IconComment from "@/components/icons/IconComment.vue"
import IconQQ from "@/components/icons/IconQQ.vue"
import IconWeibo from "@/components/icons/IconWeibo.vue"
import IconBook from "@/components/icons/IconBook.vue"
import Lecture from "@/components/icons/Lecture.vue"
import TheatricalPerformance from "@/components/icons/TheatricalPerformance.vue"
import Contest from "@/components/icons/Contest.vue"
import Volunteer from "@/components/icons/Volunteer.vue"
import Employment from "@/components/icons/Employment.vue"
import Societies from "@/components/icons/Societies.vue"
import Innovation from "@/components/icons/Innovation.vue"
import Publish from "@/components/icons/Publish.vue"
import Join from "@/components/icons/Join.vue"
import BankCard from "@/components/icons/BankCard.vue"

const allGlobalComponent = {
    WeChat, Logo, IconLostNFound, IconLogo, IconCrown,IconUser, IconHorn,
    IconCopy, IconCircle, IconCheckCircle, IconLogout, IconThumb, IconStop,IconPlay,
    IconComment,IconQQ,IconWeibo,IconBook,Lecture,TheatricalPerformance,Contest,
    Volunteer,Employment,Societies,Innovation,Publish,Join,BankCard
};
export default {
    install(app: App) {
        for (const key in allGlobalComponent) {
            if (Object.prototype.hasOwnProperty.call(allGlobalComponent, key)) {
                app.component(key, allGlobalComponent[key as keyof typeof allGlobalComponent]);
            }
        }
    }
}
